The present invention relates to storage area networks. More particularly, the present invention relates to methods and apparatus for providing cache storage in a storage area network (SAN).
A particular SAN has different cost and performance aspects based on the type of storage systems deployed. The high end storage systems like EMC Symmetrix, DMX, Hitachi 9960s, IBM Shark, etc. have customized hardware designed for scalability of memory size (e.g., can provide hundreds of GB) and performance. However, these systems are extremely expensive.
In contrast, mid-range storage systems have limited amount of cache memory (e.g., a few GBs) and can not offer the performance levels of high end systems. There is also a utilization related problem in a SAN formed from a high number of mid-range storage systems. Unfortunately, the caches in both of the mid-range and high end systems are not sharable beyond the systems in which they reside. Assuming that at any given point in time, the hosts only access a particular amount of the storage (compared to the entire available capacity), it can be assumed that not all mid-range systems are going through storage access operations all the time. Accordingly, if the sum of caches of all those idling systems is a significant number, a significant amount of cache memory is unutilized.
In light of the foregoing, it would be beneficial to bridge the price and utilization gaps in current SAN cache memory systems.